package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 收费数据生成对象 zhwy_chargedata
 * 
 * @author ruoyi
 * @date 2024-05-09
 */
public class ZhwyChargedata extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 商铺编号 */
    @Excel(name = "商铺编号")
    private Long shopsId;

    private String shopsCode;

    /** 收费项目 */
    @Excel(name = "收费项目")
    private Long chargeitemId;

    private String chargeItemName;

    /** 单价 */
    @Excel(name = "单价")
    private Long univalence;

    /** 费用开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "费用开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 费用结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "费用结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 催缴期限 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "催缴期限", width = 30, dateFormat = "yyyy-MM-dd")
    private Date deadlineTime;

    /** 上次读取 */
    @Excel(name = "上次读取")
    private Long lastData;

    /** 本次读取 */
    @Excel(name = "本次读取")
    private Long thisData;

    /** 倍率 */
    @Excel(name = "倍率")
    private Long rate;

    /** 损耗 */
    @Excel(name = "损耗")
    private Long wastage;

    /** 数量 */
    @Excel(name = "数量")
    private Long number;

    /** 滞纳金 */
    @Excel(name = "滞纳金")
    private Long latefee;

    /** 金额 */
    @Excel(name = "金额")
    private Long money;

    /** 实收金额 */
    @Excel(name = "实收金额")
    private Long fundsReceived;

    /** 付款状态 */
    @Excel(name = "付款状态")
    private Long paymentState;

    /** 退款状态 */
    @Excel(name = "退款状态")
    private Long refundStatus;

    /** 退款总金额 */
    @Excel(name = "退款总金额")
    private Long totalRefundAmount;

    /** 缴费单号 */
    @Excel(name = "缴费单号")
    private String billNumber;

    /** 缴费时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "缴费时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date chargeTime;

    /** 缴费方式 */
    @Excel(name = "缴费方式")
    private Long payId;

    /** 收款人姓名 */
    @Excel(name = "收款人姓名")
    private String chargeUser;
//
//    收费项目名称

    private String chargenames;

    public String getChargenames() {
        return chargenames;
    }

    public void setChargenames(String chargenames) {
        this.chargenames = chargenames;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public String getShopsCode() {
        return shopsCode;
    }

    public void setShopsCode(String shopsCode) {
        this.shopsCode = shopsCode;
    }

    public void setShopsId(Long shopsId)
    {
        this.shopsId = shopsId;
    }

    public Long getShopsId() 
    {
        return shopsId;
    }
    public void setChargeitemId(Long chargeitemId) 
    {
        this.chargeitemId = chargeitemId;
    }

    public Long getChargeitemId() 
    {
        return chargeitemId;
    }
    public void setUnivalence(Long univalence) 
    {
        this.univalence = univalence;
    }

    public Long getUnivalence() 
    {
        return univalence;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public String getChargeItemName() {
        return chargeItemName;
    }

    public void setChargeItemName(String chargeItemName) {
        this.chargeItemName = chargeItemName;
    }

    public Date getEndTime()
    {
        return endTime;
    }
    public void setDeadlineTime(Date deadlineTime) 
    {
        this.deadlineTime = deadlineTime;
    }

    public Date getDeadlineTime() 
    {
        return deadlineTime;
    }
    public void setLastData(Long lastData) 
    {
        this.lastData = lastData;
    }

    public Long getLastData() 
    {
        return lastData;
    }
    public void setThisData(Long thisData) 
    {
        this.thisData = thisData;
    }

    public Long getThisData() 
    {
        return thisData;
    }
    public void setRate(Long rate) 
    {
        this.rate = rate;
    }

    public Long getRate() 
    {
        return rate;
    }
    public void setWastage(Long wastage) 
    {
        this.wastage = wastage;
    }

    public Long getWastage() 
    {
        return wastage;
    }
    public void setNumber(Long number) 
    {
        this.number = number;
    }

    public Long getNumber() 
    {
        return number;
    }
    public void setLatefee(Long latefee) 
    {
        this.latefee = latefee;
    }

    public Long getLatefee() 
    {
        return latefee;
    }
    public void setMoney(Long money) 
    {
        this.money = money;
    }

    public Long getMoney() 
    {
        return money;
    }
    public void setFundsReceived(Long fundsReceived) 
    {
        this.fundsReceived = fundsReceived;
    }

    public Long getFundsReceived() 
    {
        return fundsReceived;
    }
    public void setPaymentState(Long paymentState) 
    {
        this.paymentState = paymentState;
    }

    public Long getPaymentState() 
    {
        return paymentState;
    }
    public void setRefundStatus(Long refundStatus) 
    {
        this.refundStatus = refundStatus;
    }

    public Long getRefundStatus() 
    {
        return refundStatus;
    }
    public void setTotalRefundAmount(Long totalRefundAmount) 
    {
        this.totalRefundAmount = totalRefundAmount;
    }

    public Long getTotalRefundAmount() 
    {
        return totalRefundAmount;
    }
    public void setBillNumber(String billNumber) 
    {
        this.billNumber = billNumber;
    }

    public String getBillNumber() 
    {
        return billNumber;
    }
    public void setChargeTime(Date chargeTime) 
    {
        this.chargeTime = chargeTime;
    }

    public Date getChargeTime() 
    {
        return chargeTime;
    }
    public void setPayId(Long payId) 
    {
        this.payId = payId;
    }

    public Long getPayId() 
    {
        return payId;
    }
    public void setChargeUser(String chargeUser) 
    {
        this.chargeUser = chargeUser;
    }

    public String getChargeUser() 
    {
        return chargeUser;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("shopsId", getShopsId())
            .append("chargeitemId", getChargeitemId())
            .append("univalence", getUnivalence())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("deadlineTime", getDeadlineTime())
            .append("lastData", getLastData())
            .append("thisData", getThisData())
            .append("rate", getRate())
            .append("wastage", getWastage())
            .append("number", getNumber())
            .append("latefee", getLatefee())
            .append("money", getMoney())
            .append("fundsReceived", getFundsReceived())
            .append("paymentState", getPaymentState())
            .append("refundStatus", getRefundStatus())
            .append("totalRefundAmount", getTotalRefundAmount())
            .append("billNumber", getBillNumber())
            .append("chargeTime", getChargeTime())
            .append("payId", getPayId())
            .append("chargeUser", getChargeUser())
            .toString();
    }
}
